EPGs may be used to provide television viewers with on-screen television schedule information, e.g. in a convenient regular or non-regular rectangular grid format. In one EPG, used in conjunction with analog television systems, one of the cable channels is reserved for displaying programming information. The programming information is displayed in a grid, e.g. grid 2 of FIG. 1. Grid 2 comprises four columns 3-6. First column 3 lists the various channels of the cable broadcast system. Columns 4, 5 and 6 indicate what is showing on the channels listed in column 3 in half-hour increments. Thus, if one tunes to the EPG at 10:35 p.m., second column 4 displays what is showing between 10:00 and 10:30 p.m., third column 5 displays what is showing between 10:30 and 11:00 p.m., and fourth column 6 displays what is showing between 11:00 p.m. and 11:30 p.m. A row 7 at mid-screen indicates what time slots columns 4 to 6 correspond to (a portion 8 of screen 9 above row 7 usually provides continuous advertisements). In most cable TV systems, there are more television channels than there is space for rows in grid 2. Accordingly, grid 2 typically scrolls at a pre-selected slow rate, so that a viewer can see what is showing on all of the channels. The information contained in an analog EPG is typically broadcast by a cable operator on a dedicated one of the channels of the cable TV system.
Most digital EPGs operate in a different way. In a digital EPG, program schedule information, and sometimes applications and/or systems software, is transmitted to equipment located on the viewer's premises (usually referred to as a digital “set-top box” or STB) by way of broadcast, cable, direct satellite or some other suitable form of transmission. The STB contains memory (and is in essence a dedicated computing device) so that the program schedule information can be stored for later viewing. The program schedule information stored in the STB is periodically updated (e.g., on a continuous, daily, weekly, or biweekly basis). A microprocessor within the STB cooperates with the viewer's television set to display the stored program schedule information and to implement other functions of the EPG in response to user-generated signals. The functions available depend on the sophistication of the particular EPG.
Digital EPGs are often used in an interactive television system. In an interactive television system EPG, a user may browse schedule information in any order, select programs from on-screen menus for current or future viewing and order pay-per-view programming on demand. Some EPGs permit other functions, e.g. an e-mail function, or a function that permits a user to block certain kinds of programs such as adult or violent programs.
Collectively, prior EPGs fail to provide viewing capabilities that realistically address the viewing habits of the users of these systems. As mentioned above, an analog TV EPG is viewed on a TV screen as a permanently scrolling rectangular table. This solution does not require from users any additional interaction and is suitable for a completely passive television viewer (the so-called “couch potato”). Unfortunately, this is a poor solution for interactive TV, because:                1. The scrolling speed is constant and cannot be adjusted.        2. In an analog EPG system, the user cannot switch to the channel of choice immediately from the EPG (e.g. by clicking on a display of a channel number on the EPG). Instead, the user must input the channel number with a remote controller.        3. The analog EPG scrolling table is completely sequential (providing information in an order depending upon channel number) and the user cannot pre-sort schedule data or otherwise personalize the EPG.        
A two-way interactive EPG is more sophisticated. Unfortunately this solution also has many problems. Interactive EPG systems provide dropdown menus that require multiple steps in order to interact with the EPG, which is very frustrating when a search for a desired program is unsuccessful. The EPG is inflexible in terms of menu design, because the menu itself is a set of regular two-dimensional grids.
Some of the other problems with prior art EPGs are as follows:
1. Program Description Truncation.
When displaying schedule information in a grid format, i.e., columns representing time slots and rows representing channels, program titles are generally truncated to fit into the cells of the grid. The width of a grid cell varies with the program duration. Since a 30 minute program is allotted only a small space for the program title and description, titles and/or descriptions for half and even full hour programs often must be truncated to fit in the allotted space. Some systems simply cut off the description of a program without abbreviating it in any way, such that the user cannot determine the subject matter of the program. Although some systems partially alleviate this problem by providing two lines of text in each grid cell, this solution is not ideal because program descriptions may still be truncated.
2. Inability to Simultaneously Channel Surf and View EPG.
Prior EPGs lack a method for creating a viewing itinerary electronically while a user concurrently views a program on the television screen. In other words, when a user views a program on a particular channel, he or she cannot electronically set up a sequence of other channels to surf. Moreover, these prior EPGs leave much guess work for the user as he or she navigates through a sequence of channels. When skimming through channels and trying to determine what program is being displayed on a channel, commonly known as “channel surfing,” the user must guess which program is currently being aired from the video segment encountered during channel surfing. Since much—in some cases, up to 30%—of the programming appearing on a channel at any given time is advertising, the user is not provided with any clues as to what program is appearing on a selected channel at a given time. Therefore, the user must wait until the advertisement or commercial ends before learning which program is appearing on the selected channel. Thus, a need exists for an EPG that displays current program schedule information for each channel at the same time that the user surfs through the channels.
3. Small Text Size.
Unfortunately, current EPGs allow for only one font size. However, human beings do not all have the same acuity of vision. Therefore, some viewers may be unable to read the information in the EPG.
4. Specular Highlighting.
Existing EPGs provide only a very rudimentary lighting capability. In other words, existing EPGs do not have a very sophisticated ability to adjust the brightness of the EPG. This detracts from the utility of the EPG.
In most electronic programming guides (EPGs) known to the inventor, and in those known in the art, when a viewer wants to select a program, the EPG presents a list of available programs, typically in the form of a text list (an example of which is shown in FIG. 2). In some cases known to the inventor, the text may have an additional small picture, entry, or logo pertaining to a specific item in the list of programs. For example, an image of a football may appear, referring to a listed football game, or an image of a bat and ball may refer to a listed baseball game.
However, in some cases it would be more helpful to the viewer in selecting a program to see in real time what is currently playing on all the listed channels, and thus to receive quick impressions of the programs currently in progress. Thus, a system that would allow a viewer to preview multiple thumbnail-sized images of actual real-time programming on the various channels that are listed in the EPG, using currently known methods for selecting channels is needed.
Further, an enhanced method of presenting a mosaic-style EPG allowing free choice or a precombined choice is needed, based on the limitations and capabilities of the Set Top Box (both Hardware and Software) In many cases, the STB or video system contains an MPEG decoder that has a limitation of 8 PIDs (process IDs). Two or three of these PIDs are taken up with data communication, so typically there is a maximum of perhaps four video streams that can be decoded. However, in a mosaic-type EPG it is very often desirable to offer 6, 9, 16, or even 20 or 25 video streams, but that is not possible if only a total of 8 PIDs are available, which is currently the limitation in many MPEG decoder chips. Thus, an enhanced method of presenting a mosaic-style EPG that allows the number of preview channels to exceed the limitations imposed by today's MPEG decoders is needed.